package com.ruoyi.delivery.mapper;

import com.ruoyi.delivery.domain.DelOutBoundDetail;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 出库单明细 数据层
 * @author oasis
 */
public interface DelOutBoundDetailMapper {

    /**
     * 根据 exitRecordId 获取所有出库明细
     * @param exitRecordId 出库编号
     * @return 出库明细列表
     */
    List<DelOutBoundDetail> getDetailsByExitRecordId(@Param("exitRecordId") String exitRecordId);

    /**
     * 插入出库明细
     * @param detail 出库明细对象
     * @return 影响的行数
     */
    int insertOutBoundDetail(DelOutBoundDetail detail);

    /**
     * 删除出库明细
     * @param outBoundDetailNo 出库明细编号
     * @return 影响的行数
     */
    int deleteOutBoundDetail(@Param("outBoundDetailNo") String outBoundDetailNo);

    /**
     * 修改出库明细
     * @param detail 出库明细对象
     * @return 影响的行数
     */
    int updateOutBoundDetail(DelOutBoundDetail detail);

    /**
     * 获取出库明细的总记录数
     * @param exitRecordId 出库编号
     * @return 出库明细的总记录数
     */
    int getOutBoundDetailCount(@Param("exitRecordId") String exitRecordId);

}
